/* Die Klasse Alphabet
 * 
 * Die Klasse Alphabet beinhaltet das Alphabet, die die Turingmaschine
 * Akzeptieren darf.
 * 
 * 
 * Datei:  Alphabet.java                Autor:    Martin Fischer
 * Datum:  14.11.2011            	Version:  1.0
 *
 *
 */
package kommunikation.Parser;

public class Alphabet
{

  /*
   * Array zum Speichern des Alphabets
   */
  private char [] zeichenkette;


  /*
   * Konstruktor
   * 
   * Der Kunstruktor bekommt eine Sting uebergeben dessen einzelnen 
   * Zeichen getrent im Array gespeichert werden Merke: Das Blanksymbol 
   * muss an erster Stelle stehen
   */
  public Alphabet (String alphabet)
  {
    /*
     * erzeuge ein Array vom Typ char mit der maximalen Laenge des 
     * uebergebenen Strings.
     */
    zeichenkette = new char[alphabet.length ()];

    // Hier wird Array mit den einzelnen Zeichen des Strings 
    // initialisiert
    for (int i = 0; i < alphabet.length (); i++)
    {
      zeichenkette[i] = alphabet.charAt (i);
    }
  }


  /*
   * Methoden
   * 
   * Diese methode gibt ein Zeichen zurueck das in einem bestimmten 
   * Index steht
   */
  public char gibZeichen (int index)
  {
    return zeichenkette[index];
  }


  /*
   * Die Methode istGueligesZeichen ueberprueft, ob ein bestimmtes 
   * Zeichen im Alphabet vorhanden ist oder nicht
   */
  public boolean istGueltigesZeichen (char zeichen)
  {
    for (int i = 0; i < zeichenkette.length; i++)
    {
      if (zeichen == zeichenkette[i])
      {
        return true;
      }
    }
    return false;
  }
}
